<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>CREATE COLLATION</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REV="MADE"
HREF="mailto:pgsql-docs@postgresql.org"><LINK
REL="HOME"
TITLE="PostgreSQL 9.1.2 Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="SQL Commands"
HREF="sql-commands.html"><LINK
REL="PREVIOUS"
TITLE="CREATE CAST"
HREF="sql-createcast.html"><LINK
REL="NEXT"
TITLE="CREATE CONVERSION"
HREF="sql-createconversion.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="stylesheet.css"><META
HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=ISO-8859-1"><META
NAME="creation"
CONTENT="2011-12-01T22:07:59"></HEAD
><BODY
CLASS="REFENTRY"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="5"
ALIGN="center"
VALIGN="bottom"
><A
HREF="index.html"
>PostgreSQL 9.1.2 Documentation</A
></TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
TITLE="CREATE CAST"
HREF="sql-createcast.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="sql-commands.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="60%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="20%"
ALIGN="right"
VALIGN="top"
><A
TITLE="CREATE CONVERSION"
HREF="sql-createconversion.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="SQL-CREATECOLLATION"
></A
>CREATE COLLATION</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN64614"
></A
><H2
>Name</H2
>CREATE COLLATION&nbsp;--&nbsp;define a new collation</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN64619"
></A
><H2
>Synopsis</H2
><PRE
CLASS="SYNOPSIS"
>CREATE COLLATION <TT
CLASS="REPLACEABLE"
><I
>name</I
></TT
> (
    [ LOCALE = <TT
CLASS="REPLACEABLE"
><I
>locale</I
></TT
>, ]
    [ LC_COLLATE = <TT
CLASS="REPLACEABLE"
><I
>lc_collate</I
></TT
>, ]
    [ LC_CTYPE = <TT
CLASS="REPLACEABLE"
><I
>lc_ctype</I
></TT
> ]
)
CREATE COLLATION <TT
CLASS="REPLACEABLE"
><I
>name</I
></TT
> FROM <TT
CLASS="REPLACEABLE"
><I
>existing_collation</I
></TT
></PRE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="SQL-CREATECOLLATION-DESCRIPTION"
></A
><H2
>Description</H2
><P
>   <TT
CLASS="COMMAND"
>CREATE COLLATION</TT
> defines a new collation using
   the specified operating system locale settings,
   or by copying an existing collation.
 </P
><P
>   To be able to create a collation, you must
   have <TT
CLASS="LITERAL"
>CREATE</TT
> privilege on the destination schema.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN64633"
></A
><H2
>Parameters</H2
><P
></P
><DIV
CLASS="VARIABLELIST"
><DL
><DT
><TT
CLASS="REPLACEABLE"
><I
>name</I
></TT
></DT
><DD
><P
>       The name of the collation. The collation name can be
       schema-qualified. If it is not, the collation is defined in the
       current schema. The collation name must be unique within that
       schema.  (The system catalogs can contain collations with the
       same name for other encodings, but these are ignored if the
       database encoding does not match.)
      </P
></DD
><DT
><TT
CLASS="REPLACEABLE"
><I
>locale</I
></TT
></DT
><DD
><P
>       This is a shortcut for setting <TT
CLASS="SYMBOL"
>LC_COLLATE</TT
>
       and <TT
CLASS="SYMBOL"
>LC_CTYPE</TT
> at once.  If you specify this,
       you cannot specify either of those parameters.
      </P
></DD
><DT
><TT
CLASS="REPLACEABLE"
><I
>lc_collate</I
></TT
></DT
><DD
><P
>       Use the specified operating system locale for
       the <TT
CLASS="SYMBOL"
>LC_COLLATE</TT
> locale category.  The locale
       must be applicable to the current database encoding.
       (See <A
HREF="sql-createdatabase.html"
>CREATE DATABASE</A
> for the precise
       rules.)
      </P
></DD
><DT
><TT
CLASS="REPLACEABLE"
><I
>lc_ctype</I
></TT
></DT
><DD
><P
>       Use the specified operating system locale for
       the <TT
CLASS="SYMBOL"
>LC_CTYPE</TT
> locale category.  The locale
       must be applicable to the current database encoding.
       (See <A
HREF="sql-createdatabase.html"
>CREATE DATABASE</A
> for the precise
       rules.)
      </P
></DD
><DT
><TT
CLASS="REPLACEABLE"
><I
>existing_collation</I
></TT
></DT
><DD
><P
>       The name of an existing collation to copy.  The new collation
       will have the same properties as the existing one, but it
       will be an independent object.
      </P
></DD
></DL
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="SQL-CREATECOLLATION-NOTES"
></A
><H2
>Notes</H2
><P
>   Use <TT
CLASS="COMMAND"
>DROP COLLATION</TT
> to remove user-defined collations.
  </P
><P
>   See <A
HREF="collation.html"
>Section 22.2</A
> for more information about collation
   support in PostgreSQL.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="SQL-CREATECOLLATION-EXAMPLES"
></A
><H2
>Examples</H2
><P
>   To create a collation from the operating system locale
   <TT
CLASS="LITERAL"
>fr_FR.utf8</TT
>
   (assuming the current database encoding is <TT
CLASS="LITERAL"
>UTF8</TT
>):
</P><PRE
CLASS="PROGRAMLISTING"
>CREATE COLLATION french (LOCALE = 'fr_FR.utf8');</PRE
><P>
  </P
><P
>   To create a collation from an existing collation:
</P><PRE
CLASS="PROGRAMLISTING"
>CREATE COLLATION german FROM "de_DE";</PRE
><P>
   This can be convenient to be able to use operating-system-independent
   collation names in applications.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="SQL-CREATECOLLATION-COMPAT"
></A
><H2
>Compatibility</H2
><P
>   There is a <TT
CLASS="COMMAND"
>CREATE COLLATION</TT
> statement in the SQL
   standard, but it is limited to copying an existing collation.  The
   syntax to create a new collation is
   a <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> extension.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="SQL-CREATECOLLATION-SEEALSO"
></A
><H2
>See Also</H2
><A
HREF="sql-altercollation.html"
>ALTER COLLATION</A
>, <A
HREF="sql-dropcollation.html"
>DROP COLLATION</A
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="sql-createcast.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="sql-createconversion.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>CREATE CAST</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="sql-commands.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>CREATE CONVERSION</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>